package com.zhitan.ems.app.iot.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zhitan.ems.framework.core.mp.base.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zhitan.ems.common.annotation.Excel;

import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import io.swagger.annotations.ApiModelProperty;

/**
 * 设备属性数据
 * 
 * @author zhitan
 * 
 * @date 2025-09-20 14:08:09
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("iot_device_property_data")
public class DevicePropertyDataEntity extends BaseEntity {
	private static final long serialVersionUID = 1L;
	/**
	 * 
	 */
	@TableId
	@Excel(name = "")
	private Long id;
	/**
	 * 
	 */
	@Excel(name = "")
	private Long deviceId;
	/**
	 * 
	 */
	@Excel(name = "")
	private Long propertyId;
	/**
	 * 
	 */
	@Excel(name = "")
	private String propertyName;
	/**
	 * 编码
	 */
	@ApiModelProperty("编码")
	@Excel(name = "编码")
	private String propertyCode;
	/**
	 * 数据类型：0 字符串 1 integer 2 float 3 boolean 10 date
	 */
	@ApiModelProperty("数据类型：0  字符串 1 integer  2 float 3 boolean 10 date")
	@Excel(name = "数据类型：0  字符串 1 integer  2 float 3 boolean 10 date")
	private Integer dataType;
	/**
	 * 
	 */
	@Excel(name = "")
	private String valueString;
	/**
	 * 
	 */
	@Excel(name = "")
	private Integer valueInteger;
	/**
	 * 
	 */
	@Excel(name = "")
	private Float valueFloat;
	/**
	 * 
	 */
	@Excel(name = "")
	private Integer valueBoolean;
	/**
	 * 
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "", width = 30, dateFormat = "yyyy-MM-dd")
	private Date valueDate;
	/**
	 * 创建时间
	 */
	@ApiModelProperty("创建时间")
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
	private Date createAt;
	/**
	 * 更新时间
	 */
	@ApiModelProperty("更新时间")
	@JsonFormat(pattern = "yyyy-MM-dd")
	@Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
	private Date updateAt;
	/**
	 * 
	 */
	@Excel(name = "")
	private Integer kind;
	
	
	@TableField(exist=false)
	@ApiModelProperty("显示表单类型")
	private Integer dataFormType;
	@TableField(exist=false)
	@ApiModelProperty("默认内容")
	private String dataFormContent;
	@ApiModelProperty("放大倍数")
	private BigDecimal dataMultiple;

}